﻿using System;
using SilenthinkContract.Domain;
using SilenthinkContract.Component;
using System.Collections.Specialized;

namespace Web.OnlinePay
{
    public interface IOnlinePay
    {
        /// <summary>
        /// 生成支付请求Uri
        /// </summary>
        /// <returns></returns>
        string CreatePayUrl(PayTrade trade);

        /// <summary>
        /// 处理支付平台通知
        /// </summary>
        /// <param name="nv"></param>
        /// <returns></returns>
        SkResult<PayResult> NotityHandler(NameValueCollection nv);

        /*
        /// <summary>
        /// 查询
        /// </summary>
        /// <param name="trade">交易</param>
        /// <returns></returns>
        SkResult<UserTrade> Query(UserTrade trade);
        */
    }
}